200
Can you add text with links in the event

' Occurs when an anchor element is clicked.
function AnchorClick as v (AnchorID  as  C,Options  as  C)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? AnchorID 
	? Options 
end function

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/20/2012}
var_Events = oSchedule.Events
	' var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00}).ExtraLabel = "<aID1234;OPTIONS-1234>click me</a>"
	var_Event = var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.ExtraLabel = `<aID1234;OPTIONS-1234>click me</a>`"

	' var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00}).ExtraLabel = "<a1235;OPTIONS-1235>click me</a>"
	var_Event1 = var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.ExtraLabel = `<a1235;OPTIONS-1235>click me</a>`"


199
How do you adjust the font type and size of the event (method 2)

Dim oSchedule as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/20/2012}
oSchedule.DefaultEventShortLabel = "<font mistral;12><%=%256%>"
oSchedule.DefaultEventLongLabel = oSchedule.DefaultEventShortLabel
var_Events = oSchedule.Events
	var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00})
	var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00})

198
How do you adjust the font type and size of the event (method 1)

Dim oSchedule as P
Dim var_Event as P
Dim var_Event1 as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/20/2012}
var_Events = oSchedule.Events
	var_Event = var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00})
		var_Event.ShortLabel = "<font tahoma;12><%=%256%>"
		var_Event.LongLabel = var_Event.ShortLabel
	var_Event1 = var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00})
		var_Event1.ShortLabel = "<fgcolor FF><i><font Mistral;16>your caption</i></font> goes here"
		var_Event1.LongLabel = var_Event1.ShortLabel

197
How can I change the shape of the line to be shown when user drag and drop data over the control

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OLEDropMode = 1
oSchedule.VisualAppearance.Add(1,"C:\Program Files\Exontrol\ExSchedule\Sample\EBN\dash1.ebn")
oSchedule.Template = "Background(97) = 16777216" // oSchedule.Background(97) = 16777216

196
How can I highlight the date-time from cursor when the user drag and drop data over the control
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OLEDropMode = 1
oSchedule.Template = "Background(97) = 1" // oSchedule.Background(97) = 1

195
How can I start drag and drop events

' Occurs when the OLEDrag method is called.
function OLEStartDrag as v (Data  as  OLE::Exontrol.Schedule.1::IExDataObject,AllowedEffects  as  N)
	' Data.SetData("to be carried by drag and drop")
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	AllowedEffects = 1
end function

Dim oSchedule as P
Dim var_Event as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.AllowMoveEvent = 0
oSchedule.AllowCreateEvent = 0
oSchedule.OLEDropMode = 1
oSchedule.Calendar.Selection = {06/27/2012}
var_Events = oSchedule.Events
	' var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00}).BodyBackColor = 255
	var_Event = var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.BodyBackColor = 255"

	var_Events.Add({06/27/2012 11:30:00},{06/27/2012 13:30:00})
	var_Events.Add({06/27/2012 08:30:00},{06/27/2012 11:45:00})
oSchedule.EndUpdate()

194
Is it possible to show the today date with a different foreground color

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = "month(value) = month(date(``)) and (int((yearday(value) -1- ((7-weekday(value - yearday(value) + 1)) mod 7) )/7) = int((yearday(date(``))-1)/7))"
oSchedule.Template = "Background(14) = BackColor" // oSchedule.Background(14) = oSchedule.BackColor
oSchedule.Template = "Background(30) = 255" // oSchedule.Background(30) = 255

193
How can I hide the rectangle around the today date

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = "month(value) = month(date(``)) and (int((yearday(value) -1- ((7-weekday(value - yearday(value) + 1)) mod 7) )/7) = int((yearday(date(``))-1)/7))"
oSchedule.Template = "Background(14) = BackColor" // oSchedule.Background(14) = oSchedule.BackColor

192
Is it possible to change the appearance of event with no status using the EBN (office theme)

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BeoDg6AADACAxRDAMgBQKAAzQFAYaBqGqGAAGKD4JhUAIIRZGMIjFDcEwxC6NIpAWCYRDGEwCQiNQyRDCYYw+GYCJBmKKYcgONYgQLHcgxDIsJw/FyERjjeB4egkaZHRZOUZTZQsBxRAZ2Q4EQAKRpOFY9DTPcr0HR8ZQ+BKNAYkSjQAp2VZUVJFUqDKItVzbBIaRgteA7RrOXpjRjYEBxDKcZyxLqVLToiqcRz7PqbZrjeioZoyBI+QjgYAUFDeGSTDQ3bwAA4rEqaaZnVbkOQQJTcNy7EKvYRzGA7CgPHI5QjnVR6BjUJztWyIbp3G4rchqH4RaqAF5ZXg9ez/FIaJbnUaMWhXFqOABwPC0XoIGuAJklAeR6H2dAngcEZWnQehzCsd4SmGPJzF2Io1l2fhrgeUpxHOLIAggSRAlIYw6B0ThGFyEJ4CEAwQgSV51BkDYQhCIQJHgGp0gAGBFgCB55nAAC3HCbYEGEOBIHOBZhggZgagYIRIHYEoFCGMoSCKCJiEiFgjgaYZjjYGIJiKSI2CeBZiAgXgugyYxIgYNINmIaJaDiDpKEiag8g2Y5on4M4GkqGQWEaEZkgkJhKhEZBJC4ToTmSSBqFCFJkikNhUhXQpaFiFJlikbhPhcZZpC4GwqmYSYWGaGZmgmJhkhiZopjYboamGKY+HKGhmkmTh2CqZxZl4coeGeKY6HyHxmigbIuiCaBKBaBohmiCgOgKIhokoNoKgaKJqEaCIimkwwuiUKVyBiJk7m6HIiGGMqbCiSwqhaI4pmqComiOKBqiqNouioKpKj6JQsiqapOiuBoqnqZouiwaxahqOooiuSp+j+BpLEsFpGjGbILCaSoxGwSwuk6M5skgapQjSbIrDaVI15AWpYjSbYrG6T43G2a1Ui2bhLhaZo5m6C4mmSOJuiuNpujqYYrj6co6G6S5OnYLZvFuXpyj4b4rjqfI/G7aA7kCcBMBcBpBnCDAPAKQhwkwN1wjCbBHAiQpxCwVI7kVlJHBiRhwlwbzrHGbB/AeBpLlyFI/kmcoMiMJQvHKLIbCeSpyjyEwwkycxMk8LZMDMLIzC+S4LnyVw+kwYYsn8P5KHOPJoj+TnQl8NJSjMPJnEzmR9CMQpUnOSBvESVZ1g0ZwplWNYtHcXZXDWbYHESWA2C2Fxklkdgdh8aJXmGLYvGaBoME2RxylydxNlcdpcGGPZfHqXp3C2M4fIv3sD3ACMETAnALgJF+PAbgPh7jEHiFsXgNgxjyA4I8EoyR5CcFeCEY48huDPBqMsYYXBvg9GUPMDg/wiBjHoD0D4PRpD0G4NdcY8hoDZEqNcewHRHhlGyPYTofwujaHuB0Z4bQGh3C6O9ng9xvAJEqA0TIfgXiNHGPkDznxxD4E8F8To5x8iQGuKEdI+QvBvFSOuKotxYjpGGGYN4vR3j8A+A8Yo8R9jeHeMkeY/QPgsBoGcPonw3jdHuP4D4jxsgNH8F8V47R7D+E+L8eo+A/g/G+PwGYnx1j/D+FAAwAQfhoASAEL4lADiBAePEeowBcANAGGAOgCQhhDCMAoIIWAWgFHAMQDIghEBuAaEEbAPQChgHIB8QgUAxAQGEDgJgNAwgsBOIQJAbUpCoBoIoCAtAJiFGgMEBQwwqBjAWCEYAcwigoCgIAQBAQ==")
oSchedule.OnResizeControl = 768 'exChangePanels + exHideSplitter
oSchedule.Calendar.Selection = {06/27/2012}
oSchedule.BodyEventBackColor = 16777216
oSchedule.ShowStatusEvent = .f.
oSchedule.Template = "DefaultEventPadding(-1) = 3" // oSchedule.DefaultEventPadding(-1) = 3
oSchedule.Template = "Background(75) = 16777216" // oSchedule.Background(75) = 16777216
oSchedule.Template = "Background(79) = 16777216" // oSchedule.Background(79) = 16777216
var_Events = oSchedule.Events
	' var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00}).BodyBackColor = 255
	var_Event = var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.BodyBackColor = 255"

	' var_Events.Add({06/27/2012 11:30:00},{06/27/2012 13:30:00}).BodyBackColor = 65280
	var_Event1 = var_Events.Add({06/27/2012 11:30:00},{06/27/2012 13:30:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.BodyBackColor = 65280"

oSchedule.EndUpdate()

191
Is it possible to change the appearance of event's status using the EBN (office theme)

Dim oSchedule as P
Dim var_Appearance as P
Dim var_Event as local
Dim var_Event1 as P
Dim var_Event2 as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 768 'exChangePanels + exHideSplitter
var_Appearance = oSchedule.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BKYCg6AADACAxRDAMgBQKAAzQFAYaBqGqGAAGKD4JhUAIIRZGMIjFDcEwxC6NIpAWCYRDEMQ0AJCIzDJCIZBkHCPRjASQZUhmHIDTbIEBxfIMIxLE9IMwxfA8ax1GifI6hGSYDa0HAkABTVQRLL4aSDK6NaYmSL5DhkBokUpGKTpOhgATHMqqIzGURZNquEQ1DBbEI3BaUaw/CKRLAoahqVpqK4tS7MNa3XKkcxzD6eIypGBKAgmQoJDLRGIxTiYACxPQACzsEAKapKUZPRZVNYQJQlNRDLiEcrgOr4DxqO4aWbZViaDZVawlNy5bhtfaqGrfKYJYLrWCTbh0Tz9KzIJJwHbcKxjKrDczjEoSVwiAmSgcGmIxaggHBHFmFpoHEJwbg8FpammO5bEUaxbm6ZwDH+YI7EIQQQhKAYkkYdA6hyDI4ngGRIA8AwQgSV51BkDYQhCIQJHeHAkCAGBFgGR55m8CQBkONkYCEEgxGeBZJHQDgTgWFhFgyf4HmICByBqBRhmiAgmD+YggAIHIJmKSIhGMQJijiNgmgoYwYkoH4NCIWJaC6BhiiiZg2g4CR4moN4LmOWQGEKEAkCibgwg+vwiEeEQjFifhQhMIpZDoOoViUKJyFGExlDkGhXhcZIZGIXIWiUSIyGKFRmAkPhkheJYZC4bIYmaaYGGmF5mjmSh1hqJwZmIRYdieGZSH2GxnjmahbhoJx5nqAYhigOYaHOIAohiHhniKKBaDIZYjiiOZCgeJImnoEh/iWKJYk6FYmikehyhOJ4pBqCoZiQKY6gKHYIGmeoiiGKoqDqMoliwKh6FKM4riqOQOjeLYqhqYoxi6K5anKL4visWoSkGMYsDsCo5hKLIbCKS4jmyKp+kyM5qlsRpFiyLB7GKTY2i0Spuk6NItAsfpXjALY7hKXYIk6Wh2CmBphgqOgTjuYhIHachAlAECAg=")
	var_Appearance.Add(2,"CP:1 0 0 1 0")
	var_Appearance.Add(4,"gBFLBCJwBAEHhEJAEGg4BGoDg6AADACAxRDAMgBQKAAzQFAYaBqGqGAAGKD4JhUAIIRZGMIjFDcEwxC6NIpASLoJDCH4mSTHYxyHIMWwtDiBZgkCA4fiGEYnThKM5SdKsXABG6NErSdDAAoKRIVTjAcsVTicAo+R7TcYgLBNAQHKQAHZDQRKZpuFoRRKJNgDLYUEhqGCyYDseyZNj2GZYRDPVqzWAFFzrFSqLilaYpSh+bpfSRSVI3PakQz+LCNCzwEAKYoaRZDRZgdzUbItMYNBKsMQgO6QAwqNKYQjWVaaFgEYzJMa2LTiHSqQhrGqMQjnV5ZPgVzZKZZGVQ1LBOOZfEJ2XacSqeCyWEqnRryFpWRpfGXiX7EOY7HaePwDAQQhKAaEwZlCahyDKDBjm4a5JAiG5jgyDYhCKDZukYSAYgsLAzh0RBlBqBAkA4Ox+n+H5AAGDJWDWH5jFmdBQl8Z5yAGAZfngDZ6H9HIiACAhUCgMgPgSYAYA4EoDiEWBGBiAxhAIXAADITRzGIIA2AyAxYleCJhGiFgnggYg4iIEYImKKIqC6B4iliMg2DYIRolYIoLA2ExmDmDwNhiNg9g+Y44goPYMmGeJeEKD4hBMMJbDaTIYnYTg2mUOBaFOFZknkVhNhYZZJFIT4ViWWRElmFohmkYhehQJA4ESTg3A2WYuG2GwmmgWhuhyZwJjIcodGaeZmGANpnEMdhkAAJ5ZE4cYaieCZ2HeHhoGoEoIh4IRjESXg3iialFiQaJaE6Fokg2ahWhiJBpEgRociWaZYHqH4mmiehqiOKBAAqDJUDgTgaiyYYFiqapGiyK4rAqTosiQa14jKKxrGqPo6i8a46laPIwmuGB6juMBrnsEo9jCLB6jKTIwCyawmk2L4sGsQpDjObIrFAAA2E4U4WlyN4tlsfgWjebhLgaXY4waApqjoLorhSZY7C6a4KBGPBuhuQppjyIZrlKa48m8e5WBENwOHOIyNDAHAOBaQJwgwFwBgWDZziSaZCHAQ4jAeQoxBwGp/kUMQME8FZFDGLBDBaB4xmwcwXkacQcDMDpDE6HIjCiSYyhyHwuDocpMisL5MHKfIuBGTIylyZgWDgToziyYg7A6TJ8myTwO7KPZRDQLQTEYOp0g0AxKgQdBNDcQ5PHSPRHEeVQ1A0XxMlaNRdGsT4Hg4Q44m2WB2D2CxkgWNhNicZpYjaDYvGWW52l2PxqDsdz+meBBOGOIEcAdAPAnEcPIPAbx4C2H+MEd4XAHDxGEPEDgBh6jBDiDwEI4QFhvEOI8EYyR3i8EMPsZQcguCsBGMwOQMApj5GYEAPg8RtAADoDAFY9xpiAAQAggIA=")
oSchedule.Calendar.Selection = {06/27/2012}
oSchedule.StatusEventColor = 33554432
oSchedule.BodyEventBackColor = 67108864
oSchedule.Template = "Background(75) = 16777216" // oSchedule.Background(75) = 16777216
oSchedule.Template = "Background(79) = 16777216" // oSchedule.Background(79) = 16777216
oSchedule.StatusEventSize = 6
oSchedule.Template = "DefaultEventPadding(-1) = 2" // oSchedule.DefaultEventPadding(-1) = 2
var_Events = oSchedule.Events
	' var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00}).BodyBackColor = 255
	var_Event = var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.BodyBackColor = 255"

	var_Event1 = var_Events.Add({06/27/2012 11:30:00},{06/27/2012 13:30:00})
		var_Event1.BodyBackColor = 65280
		var_Event1.StatusColor = 8388608
		var_Event1.ExtraLabel = "Point"
	var_Event2 = var_Events.Add({06/27/2012 08:30:00},{06/27/2012 11:45:00})
		var_Event2.StatusColor = 16711935
oSchedule.EndUpdate()

190
Does your control support subscript or superscript, in HTML captions

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Event2 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BodyEventBackColor = 15790320
oSchedule.Calendar.Selection = {06/20/2012}
var_Events = oSchedule.Events
	' var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00}).ExtraLabel = "<sha ;;0>Event <b><font ;6><off 4>1"
	var_Event = var_Events.Add({06/20/2012 09:00:00},{06/20/2012 11:00:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.ExtraLabel = `<sha ;;0>Event <b><font ;6><off 4>1`"

	' var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00}).ExtraLabel = "<sha ;;0>Event <b><font ;6><off 4>2"
	var_Event1 = var_Events.Add({06/20/2012 11:00:00},{06/20/2012 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.ExtraLabel = `<sha ;;0>Event <b><font ;6><off 4>2`"

	' var_Events.Add({06/20/2012 13:00:00},{06/20/2012 15:00:00}).ExtraLabel = "<sha ;;0>Event <b><font ;6><off -6>2<off 4>3<off 4>1"
	var_Event2 = var_Events.Add({06/20/2012 13:00:00},{06/20/2012 15:00:00})
	oSchedule.TemplateDef = "dim var_Event2"
	oSchedule.TemplateDef = var_Event2
	oSchedule.Template = "var_Event2.ExtraLabel = `<sha ;;0>Event <b><font ;6><off -6>2<off 4>3<off 4>1`"


189
How can I hide the scheduler part of the control, so I can use the calendar panel only

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OnResizeControl = 257 'exHideSplitter + exResizePanelRight

188
I see how I can specify a non-working day pattern for weekends, but how can I specify non-working days for holidays

Dim oSchedule as P
Dim var_Calendar as P
Dim var_NonworkingTimes as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/28/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/28/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({06/05/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#6/5/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
	' var_Calendar.SelectDate({06/12/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#6/12/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
var_NonworkingTimes = oSchedule.NonworkingTimes
	var_NonworkingTimes.Add("month(value) = 5","00:00","24:00",-1)
	var_NonworkingTimes.Add("value in (#6/5/2012#,#6/7/2012#)","00:00","24:00",-1)

187
How do I enable the scrollbar-extension, as thumb to be shown outside of the control's client area

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.ScrollBars = 15
oSchedule.Template = "ScrollPartVisible(0,65536) = True" // oSchedule.ScrollPartVisible(0,65536) = .t.
oSchedule.Template = "ScrollPartVisible(1,65536) = True" // oSchedule.ScrollPartVisible(1,65536) = .t.
oSchedule.Template = "ScrollPartVisible(2,65536) = True" // oSchedule.ScrollPartVisible(2 '2 + ,65536) = .t.
oSchedule.ScrollWidth = 4
oSchedule.Template = "Background(276) = 15790320" // oSchedule.Background(276) = 15790320
oSchedule.Template = "Background(260) = 8421504" // oSchedule.Background(260) = 8421504
oSchedule.ScrollHeight = 4
oSchedule.Template = "Background(404) = Background(276)" // oSchedule.Background(404) = oSchedule.Background(276)
oSchedule.Template = "Background(388) = Background(260)" // oSchedule.Background(388) = oSchedule.Background(260)
oSchedule.Template = "Background(511) = Background(276)" // oSchedule.Background(511) = oSchedule.Background(276)
oSchedule.EndUpdate()

186
How can I show contiguously the days, in a single row

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/20/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/20/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/27/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/27/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
oSchedule.ShowViewCompact = 1

185
How can I show contiguously the days

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/20/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/20/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/27/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/27/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
oSchedule.ShowViewCompact = -1

184
How can I display the time in european format with no usage of AM/PM

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P
Dim var_TimeScale as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_TimeScale = oSchedule.TimeScales.Item(0)
	var_TimeScale.MajorTimeLabel = "<%hh%>:<%nn%>"
	var_TimeScale.Width = 32
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/11/2001}
	var_Calendar.ShortTimeFormat = "<%h%>:<%nn%>"
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:15:00})
	var_Events.Add({06/11/2001 10:30:00},{06/11/2001 14:30:00})

183
Is it possible to zoom the schedule component using a key and scrolling the wheel (not pressing it and moving the mouse)
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.AllowResizeSchedule = 19 'exCTRLKey + exMiddleClick
oSchedule.AllowMoveSchedule = 3

182
How can I change the format of the date being displayed in the calendar panel

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.HeaderDayLabel = "<sha><%mmmm%></sha> <sha><fgcolor=FF0000><%yyyy%></fgcolor></sha>"

181
How can I display the Year in Thai, Buddhist, Korean format

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.FirstWeekDay = var_Calendar.LocFirstWeekDay
	var_Calendar.MonthNames = var_Calendar.LocMonthNames
	var_Calendar.WeekDays = var_Calendar.LocWeekDays
	var_Calendar.AMPM = var_Calendar.LocAMPM
	var_Calendar.HeaderDayLabel = "<%mmmm%> <fgcolor=FF0000><%loc_yyyy%>"
oSchedule.HeaderDayLongLabel = "<|><%dddd%>, <%mmmm%> <%d%>, <fgcolor=FF0000><%loc_yyyy%><|><%dddd%>,<%mmmm%> <%d%>,<fgcolor=FF0000><%loc_yyyy%><|><%dddd%>, <%mmmm%> <%d%>,`<fgcolor=FF0000><%loc_yy%><|><%dddd%>, <%mmmm%> <%d%><|><%dddd%>, <%m3%> <%d%><|><%dddd%>, <%d%><|><%dddd%><|><%d3%><|><%d2%><|><%d1%>"

180
May I specify a fixed width for my dates, so user can not resize it
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 3585 'exCalendarAutoHide + exCalendarFit + exChangePanels + exResizePanelRight
oSchedule.AllowResizeSchedule = 0
oSchedule.AllowMoveSchedule = 3
oSchedule.ShowViewCompact = -1
oSchedule.DayViewWidth = 96
oSchedule.DayViewHeight = 256
oSchedule.EndUpdate()

179
How can I change the format of date being displayed on the header
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.HeaderDayLongLabel = "<|><%dddd%>, <%d%> <%mmmm%>, <%yyyy%><|><%dddd%>, <%d%> <%mmmm%>, <%yyyy%><|><%dddd%>, <%d%> <%mmmm%>,`<%yy%><|><%dddd%>, <%d%> <%mmmm%><|><%dddd%>, <%d%> <%m3%><|><%dddd%>, <%d%><|><%dddd%><|><%d3%><|><%d2%><|><%d1%>"

178
Is there any notifications for exchanging the panels at runtime
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "End exLayoutExchangePanels(16)" 
	? Operation 
end function

' Occurs when the control's layout is about to be changed.
function LayoutStartChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Start exLayoutExchangePanels(16)" 
	? Operation 
end function

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.AllowExchangePanels = 1
oSchedule.AllowCreateEvent = 0

177
How can I handle the All-Day events only

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 3072 'exCalendarAutoHide + exCalendarFit
oSchedule.ShowAllDayHeader = .t.
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/08/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/8/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/15/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/15/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
oSchedule.TimeScales.Item(0).Visible = .f.
' oSchedule.Events.Add({05/08/2012},{05/17/2012}).AllDayEvent = .t.
var_Event = oSchedule.Events.Add({05/08/2012},{05/17/2012})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.AllDayEvent = True"

oSchedule.EndUpdate()

176
Is it possible to show the All-Day events with EBN including the next/prev signs (2)

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 3072 'exCalendarAutoHide + exCalendarFit
oSchedule.ShowAllDayHeader = .t.
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/08/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/8/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/15/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/15/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
oSchedule.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BbkMQAAYAQGKIYBkAKBQAGaAoDDcOILQiMQzjTBMKgBBCLIxiGK4DhiF4aRSBMIwYAAYhyG4BIRGcYJEDMOQzR4MICSBKkMhlDiPY5mUAJEiSJg3TDQlzpAoSGoeUhGTZnQaQASXJqKZ6kegoEh4MopTTHQLRUB8EyTDKnaapSJpEDINQlWTZciDKKFUQTNi3KxraKqbjqO47VJKEpSZBMXRhBIYZCueZZXgPBY5YhIE64BSeASoACDZzoaAwTrOAwUZZFVg2DSOGSBRzQMKrCZKagnFYDVzleYxLjdR47Qy1Ih2GA7QqubYkUTmOjgBaoAYxQaaLx0OS5Rj4NAwZLFXI1eAGd6BDLhLz4XAOHxHjmAZvGOWoeG8PhBiMGIMGOQxZCQOBpGUG4NncEIdB8MxLhSbpRnMIIIEkQJSGMOgdE4RhfAwJZtAwEIEleeQZA2EIQiECR2ludB8BgRYMAeKYDByB4DG5F4hBgTgWgUYYIFIGoFmGOBlAmBJMmMQJwggYg4goJIJmIaImCWCpigiLgTgeYQYjYMoKiMOIyDSCIinQDggg2YxonYNYNGOEACDuD4jkifhFg4IQYkCW4RiQSQ2ECEhjiiRhHhOJQ4jYQYQmSSRmFOFZlCkUhehMJZJC4VYYmWaYGFqF5ljkQhChcZh5jYKoZiYSY6D2HAmgmVhWhqJYJkYeoLieCYyHuHInEmSoAh8Zgplof4SA2OQqgKIZPAmBgciOYYaEIHYkmQFAEIC")
oSchedule.VisualAppearance.Add(2,"gBFLBCJwBAEHhEJAEGg4BVMIQAAYAQGKIYBkAKBQAGaAoDDYMwzQwAAxjOK0EwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBSFDcOwHGyQYDkCQpEhyKo+CTIAySXJsdw3IyNAIhEB4fgmM4DP7UIAVC78aRABCESgNEwzULUchlDDICJQSQRGzHDSKYDFCCaKgOTI6kgicpJUt6PBtaovKoWOZBcJ3Xjed6vBgeASpQbEL6wDCbfrjB6KY5eeDXXSkAkB")
oSchedule.VisualAppearance.Add(3,"gBFLBCJwBAEHhEJAEGg4BVUIQAAYAQGKIYBkAKBQAGaAoDDYMwzQwAAxjOK0EwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBSFDcOwHGyQYDkCQpEhyKo+CTIAySXJsZxpHKaAIhEB4fgmRgAP7UNQVFLkEgRBIoDRMM5DVLIZQxSAiUIkERtRQ1CqBRQhGioDoyOgABhFZSUPKlIztO45DwbO56RrlWzONA8FzXdgDYYLQjAcJwXA7awrAZ8P7iGBZBbtdQCgIA==")
oSchedule.BodyEventBackColor = 16777216
oSchedule.Template = "Background(86) = 33554432" // oSchedule.Background(86) = 33554432
oSchedule.Template = "Background(85) = 50331648" // oSchedule.Background(85) = 50331648
oSchedule.HeaderAllDayEventHeight = -14
' oSchedule.Events.Add({05/08/2012},{05/17/2012}).AllDayEvent = .t.
var_Event = oSchedule.Events.Add({05/08/2012},{05/17/2012})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.AllDayEvent = True"

oSchedule.EndUpdate()

175
How can I select programatically two weeks

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	' var_Calendar.SelectDate({05/08/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/8/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/15/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/15/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)

174
Is it possible to show the All-Day events with EBN including the next/prev signs (1)

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 2048
oSchedule.ShowAllDayHeader = .t.
var_Calendar = oSchedule.Calendar
	var_Calendar.FirstWeekDay = 1
	' var_Calendar.SelectDate({05/08/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/8/2012#) = True"

	var_Calendar.Select(3)
	' var_Calendar.SelectDate({05/15/2012}) = .f.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#5/15/2012#) = False"

	var_Calendar.Select(19 'exSelectToggle + exSelectWeek)
oSchedule.VisualAppearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BbkMQAAYAQGKIYBkAKBQAGaAoDDcOILQiMQzjTBMKgBBCLIxiGK4DhiF4aRSBMIwYAAYhyG4BIRGcYJEDMOQzR4MICSBKkMhlDiPY5mUAJEiSJg3TDQlzpAoSGoeUhGTZnQaQASXJqKZ6kegoEh4MopTTHQLRUB8EyTDKnaapSJpEDINQlWTZciDKKFUQTNi3KxraKqbjqO47VJKEpSZBMXRhBIYZCueZZXgPBY5YhIE64BSeASoACDZzoaAwTrOAwUZZFVg2DSOGSBRzQMKrCZKagnFYDVzleYxLjdR47Qy1Ih2GA7QqubYkUTmOjgBaoAYxQaaLx0OS5Rj4NAwZLFXI1eAGd6BDLhLz4XAOHxHjmAZvGOWoeG8PhBiMGIMGOQxZCQOBpGUG4NncEIdB8MxLhSbpRnMIIIEkQJSGMOgdE4RhfAwJZtAwEIEleeQZA2EIQiECR2ludB8BgRYMAeKYDByB4DG5F4hBgTgWgUYYIFIGoFmGOBlAmBJMmMQJwggYg4goJIJmIaImCWCpigiLgTgeYQYjYMoKiMOIyDSCIinQDggg2YxonYNYNGOEACDuD4jkifhFg4IQYkCW4RiQSQ2ECEhjiiRhHhOJQ4jYQYQmSSRmFOFZlCkUhehMJZJC4VYYmWaYGFqF5ljkQhChcZh5jYKoZiYSY6D2HAmgmVhWhqJYJkYeoLieCYyHuHInEmSoAh8Zgplof4SA2OQqgKIZPAmBgciOYYaEIHYkmQFAEIC")
oSchedule.VisualAppearance.Add(2,"gBFLBCJwBAEHhEJAEGg4BKMMQAAYAQGKIYBkAKBQAGaAoDDUNgwQwAAxDGKkEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBSFDcOwHGyQYDkCQpEhyKo+CTIA4SXJsdxpI4EIRCSL6MgNf5PABTb7zTSgYANF6WRZgWgpTjcMJHTpYFIwHRdQwHLqoagqKZJAqMABQGiYZyHKcwMYgBZXJBEbbMNBtBIUIRtaxZBBiFzgUZYEBnEbDN4YbapMhyLI2OZBcCOJQ4SCoW4GJ49J7KXgYZiHOLcfjcLovLq5fiOQ5CV5ZXROM6sQyzIKWaCzLL5PjKHInWrPNa3DJtDyXJzUNY9GScG6HBLhWB0czzXIuO4djqXg4jUOo9j8N4Zk6YoeA+bZKhcV49kyaAllODhPC8d5bi+WJ6H0fhvHcExIHgQB4nuHpOj4Y4zioeQfDePZRGcHI3lGIh9h4JwhkodQckecY9G+WpHDmUAdAeNwCBEfRcGaIZ/G2D52gWfR0iGRhFg8Y5iBYTQBICA=")
oSchedule.VisualAppearance.Add(3,"gBFLBCJwBAEHhEJAEGg4BgsHQAAYAQGKIYBkAKBQAGaAoDDUNgwQwAAxDGKkEwsACEIrjKCRShyCYZRhGcTSBCIZBqEqSZLiEZRQiiCYsS5GQBSFDcOwHGyQYDkCQpEhyKo+CTIA4SXJsZxpI6EQQhEJIfo2Az/VAAFQPfLNKhgAyXZZFWBaCoaEgwUhVMhUVAdGR1BKvKjqKoZcomCRQGiYZyHKcwMYgBZRRBEbbMNBtBIULasWjQYhdYI7WDTdR4XhmGDkPBtcbbPDcUpBBSLOAjSSOExzILhSrFVyXVzTXL5XDGMg7Wa5foFIDmPRtVbWNydLyvICOJK2eZOExrHrhWrPMZaRpnUyXJ6pcBvfA4Zi7QZlWjPOR2aoNCZbjuXpyjsPIahmYJ/keVR0HwPYsnIXQ4mSZ50jwXIfC+HxnmmcZ2HuCAOn+P43lSUZ1neXxeF4L4bmgeoeCcCZEHcXxIAGLBlBuBpphsdgfGaNB0B6WwXjoARrE+dxVkYageAgHgUD+XJWm2U4GliNhJhIQBAICA==")
oSchedule.BodyEventBackColor = 16777216
oSchedule.Template = "Background(86) = 33554432" // oSchedule.Background(86) = 33554432
oSchedule.Template = "Background(85) = 50331648" // oSchedule.Background(85) = 50331648
oSchedule.HeaderAllDayEventHeight = -20
' oSchedule.Events.Add({05/08/2012},{05/17/2012}).AllDayEvent = .t.
var_Event = oSchedule.Events.Add({05/08/2012},{05/17/2012})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.AllDayEvent = True"

oSchedule.EndUpdate()

173
Can I make it zoom in using CTRL-MouseWheel instead of using the middle button
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.AllowResizeSchedule = 19 'exCTRLKey + exMiddleClick

172
It is by default not possible, to simply scroll the component with the mouse wheel. How do I make it so
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.AllowMoveSchedule = 3

171
Can I get and set the width of the time bar
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.TimeScales.Item(0).Width = 48

170
How do I select the current year

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.ShowViewCompact = -1
oSchedule.OnResizeControl = 2048
oSchedule.Calendar.Select(1)

169
How do I select the current week day

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.ShowViewCompact = -1
oSchedule.Calendar.Select(4)

168
How do I select the current week

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.ShowViewCompact = -1
oSchedule.Calendar.Select(3)

167
How can I restore the layout of the panels, when user changes the width and the alignment of the panels
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "End Operation " 
	? Operation 
	? "Layout " 
	? oSchedule.OnResizeControl 
	? "PaneWidth(False)" 
	? oSchedule.PaneWidth(.f.) 
end function

' Occurs when the control's layout is about to be changed.
function LayoutStartChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Start Operation " 
	? Operation 
	? "Layout " 
	? oSchedule.OnResizeControl 
	? "PaneWidth(False)" 
	? oSchedule.PaneWidth(.f.) 
end function

' Occurs when the user moves the mouse.
function MouseMove as v (Button  as  N,Shift  as  N,X  as  OLE::Exontrol.Schedule.1::OLE_XPOS_PIXELS,Y  as  OLE::Exontrol.Schedule.1::OLE_YPOS_PIXELS)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Layout " 
	? oSchedule.OnResizeControl 
	? "PaneWidth(False)" 
	? oSchedule.PaneWidth(.f.) 
end function

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex

166
Is it possibly to set the column width of the group/person using the api

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P
Dim var_Group as P
Dim var_Group1 as P
Dim var_Groups as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.DisplayGroupingButton = .t.
oSchedule.ShowGroupingEvents = .t.
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Groups = oSchedule.Groups
	var_Group = var_Groups.Add(1,"Group 1")
		var_Group.Title = "First"
		var_Group.Visible = .t.
	var_Group1 = var_Groups.Add(2,"Group 2")
		var_Group1.Title = "Second"
		var_Group1.Visible = .t.
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00}).GroupID = 1
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.GroupID = 1"

	' var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).GroupID = 2
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.GroupID = 2"

oSchedule.Groups.Item(1).Width = 24
oSchedule.EndUpdate()

165
When viewing the schedule by week or month and the month ends during the week (July 31, Tuesday -> August 1, Wednesday), the days continue down as a new week 'row'. When there is a change in month, is it possible to still show the full week without that break (compact)

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 2048
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {05/23/2012}
	var_Calendar.Selection = "month(value) in (5,6)"
oSchedule.ShowViewCompact = -1
oSchedule.EndUpdate()

164
I want to change the default event tooltip. How can I do that

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.DefaultEventTooltip = "<b>BEGIN:</b> <%=%1%><br><b>END:</b>: <%=%2%><br><b>LENGTH:</b> <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>"

163
How can I select the entire week for a specified date

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
var_Calendar = oSchedule.Calendar
	var_Calendar.NonworkingDays = 0
	var_Calendar.ShowNonMonthDays = .f.
	var_Calendar.FirstWeekDay = 0
	var_Calendar.Selection = {03/05/2012}
	var_Calendar.Selection = "(int((yearday(value) -1- ((7-weekday(value - yearday(value) + 1)) mod 7) )/7) = int((yearday(#3/5/2012#)-1)/7))"
oSchedule.BorderSelStyle = -1
oSchedule.Template = "Background(81) = 15790320" // oSchedule.Background(81) = 15790320
oSchedule.EndUpdate()

162
I have noticed that I can drag bars from All-Day header to time-zone and reverse. Is it possible to prevent that

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Event2 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 2048
oSchedule.ShowAllDayHeader = .t.
oSchedule.AllowUpdateAllDayFlag = .f.
oSchedule.Calendar.Selection = {05/23/2012}
oSchedule.Calendar.Selection = "value in (#5/23/2012#,#5/24/2012#,#5/25/2012#)"
var_Events = oSchedule.Events
	' var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00}).ExtraLabel = "<sha>dentist"
	var_Event = var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.ExtraLabel = `<sha>dentist`"

	' var_Events.Add({05/24/2012},{05/25/2012}).AllDayEvent = .t.
	var_Event1 = var_Events.Add({05/24/2012},{05/25/2012})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.AllDayEvent = True"

	' var_Events.Add({05/23/2012},{05/24/2012}).AllDayEvent = .t.
	var_Event2 = var_Events.Add({05/23/2012},{05/24/2012})
	oSchedule.TemplateDef = "dim var_Event2"
	oSchedule.TemplateDef = var_Event2
	oSchedule.Template = "var_Event2.AllDayEvent = True"

oSchedule.SelectEventStyle = -1
oSchedule.ShowSelectEvent = .f.
oSchedule.EndUpdate()

161
When an all-day event stretches over multiple days (ex. Monday thru Friday), is it possible to have that display as a continuous bar across those days instead of separate bars on each day

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Event2 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.OnResizeControl = 2048
oSchedule.ShowAllDayHeader = .t.
oSchedule.Calendar.Selection = {05/23/2012}
oSchedule.Calendar.Selection = "value in (#5/23/2012#,#5/24/2012#,#5/25/2012#)"
var_Events = oSchedule.Events
	' var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00}).ExtraLabel = "<sha>dentist"
	var_Event = var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.ExtraLabel = `<sha>dentist`"

	' var_Events.Add({05/24/2012},{05/25/2012}).AllDayEvent = .t.
	var_Event1 = var_Events.Add({05/24/2012},{05/25/2012})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.AllDayEvent = True"

	' var_Events.Add({05/23/2012},{05/24/2012}).AllDayEvent = .t.
	var_Event2 = var_Events.Add({05/23/2012},{05/24/2012})
	oSchedule.TemplateDef = "dim var_Event2"
	oSchedule.TemplateDef = var_Event2
	oSchedule.Template = "var_Event2.AllDayEvent = True"

oSchedule.SelectEventStyle = -1
oSchedule.ShowSelectEvent = .f.
oSchedule.EndUpdate()

160
If I double click to a scheduled event and enter text, how can I read this newly entered text (i.e. what is its corresponding field)

' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? oSchedule.EventFromPoint(-1,-1) 
end function

Dim oSchedule as P
Dim var_Event as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.Calendar.Selection = {05/24/2012}
var_Events = oSchedule.Events
	' var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00}).ExtraLabel = "editable"
	var_Event = var_Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.ExtraLabel = `editable`"

oSchedule.SelectEventStyle = -1
oSchedule.ShowSelectEvent = .f.
oSchedule.EndUpdate()

159
Is it possible to show the date's header with a shadow

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.HeaderDayLongLabel = "<sha><%dddd%>, <%mmmm%> <%d%>, <%yyyy%>"
oSchedule.Calendar.OnSelectDate = 1
oSchedule.AllowResizeSchedule = 0

158
We need to highlight a day for example no booking/disabling for that day, is the timezone good choice (method 3)

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Pattern as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/27/2012}
	var_Calendar.Selection = "value in (#6/26/2012#,#6/27/2012#,#6/28/2012#)"
oSchedule.AllowMultiDaysEvent = .f.
' oSchedule.NonworkingPatterns.Add(1,1).Pattern.Color = 15790320
var_Pattern = oSchedule.NonworkingPatterns.Add(1,1).Pattern
oSchedule.TemplateDef = "dim var_Pattern"
oSchedule.TemplateDef = var_Pattern
oSchedule.Template = "var_Pattern.Color = 15790320"

oSchedule.NonworkingTimes.Add("value in (#6/27/2012#)","00:00","24:00",1)
oSchedule.ShowNonworkingTime = 1
oSchedule.Calendar.DisableZoneFormat = "value in (#6/27/2012#)"

157
We need to highlight a day for example no booking for that day, is the timezone good choice (method 2)

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Pattern as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/27/2012}
	var_Calendar.Selection = "value in (#6/26/2012#,#6/27/2012#,#6/28/2012#)"
' oSchedule.NonworkingPatterns.Add(1,1).Pattern.Color = 15790320
var_Pattern = oSchedule.NonworkingPatterns.Add(1,1).Pattern
oSchedule.TemplateDef = "dim var_Pattern"
oSchedule.TemplateDef = var_Pattern
oSchedule.Template = "var_Pattern.Color = 15790320"

oSchedule.NonworkingTimes.Add("value in (#6/27/2012#)","00:00","24:00",1)
oSchedule.ShowNonworkingTime = 1

156
We need to highlight a day for example no booking for that day, is the timezone good choice (method 1)

Dim oSchedule as P
Dim var_Calendar as P
Dim var_MarkZone as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/27/2012}
	var_Calendar.Selection = "value in (#6/26/2012#,#6/27/2012#,#6/28/2012#)"
var_MarkZone = oSchedule.MarkZones.Add("zone",{06/27/2012},{06/28/2012})
	var_MarkZone.BackColor = 15790320
	var_MarkZone.Pattern.Type = 0
oSchedule.ShowMarkZone = 1

155
Is is possible to change the background color for a specific day

Dim oSchedule as P
Dim var_Calendar as P
Dim var_MarkZone as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/27/2012}
	var_Calendar.Selection = "value in (#6/26/2012#,#6/27/2012#,#6/28/2012#)"
var_MarkZone = oSchedule.MarkZones.Add("zone",{06/27/2012},{06/28/2012})
	var_MarkZone.BackColor = 15790320
	var_MarkZone.Pattern.Type = 0
oSchedule.ShowMarkZone = 1

154
I want to know how can I call a user define form when editing a time slot
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "End exScheduleResize(5)" 
	? Operation 
end function

' Occurs when the control's layout is about to be changed.
function LayoutStartChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Start exScheduleResize(5)" 
	? Operation 
end function

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.SingleSel = .t.
	var_Calendar.OnSelectDate = 1
oSchedule.ClipToSel = .t.
oSchedule.AllowMoveSchedule = 0
oSchedule.AllowMoveGroup = 0
oSchedule.AllowResizeSchedule = 1
oSchedule.AllowCreateEvent = 0

153
Can we lock the scroll bars so that it only scrolls within the selected date

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#)"
	var_Calendar.SingleSel = .t.
	var_Calendar.OnSelectDate = 1
oSchedule.ClipToSel = .t.
oSchedule.DayViewWidth = -1
oSchedule.DayViewHeight = 512
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})

152
Is it possible to specify the dates to be printed to a single page

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P
Dim var_Print as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#)"
oSchedule.DayViewWidth = 116
oSchedule.DayViewHeight = 116
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})
var_Print = OLE.Create("Exontrol.Print")
	var_Print.Options = "Range=month(value)=6;FitToPage=On"
	var_Print.PrintExt = oSchedule
	var_Print.Preview()

151
Is it possible to specify the dates to be printed

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P
Dim var_Print as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#)"
oSchedule.DayViewWidth = 116
oSchedule.DayViewHeight = 116
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})
var_Print = OLE.Create("Exontrol.Print")
	var_Print.Options = "Range=month(value)=6"
	var_Print.PrintExt = oSchedule
	var_Print.Preview()

150
Does your control support Fit-To-Page, while printing

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P
Dim var_Print as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#)"
oSchedule.DayViewWidth = 512
oSchedule.DayViewHeight = 512
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})
var_Print = OLE.Create("Exontrol.Print")
	var_Print.Options = "FitToPage=On"
	var_Print.PrintExt = oSchedule
	var_Print.Preview()

149
Does your control support Print and Print-Preview

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P
Dim var_Print as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#)"
oSchedule.DayViewWidth = 512
oSchedule.DayViewHeight = 512
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})
var_Print = OLE.Create("Exontrol.Print")
	var_Print.PrintExt = oSchedule
	var_Print.Preview()

148
How can I specify the height (time slot) of the day to be larger
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.ClipToSel = .t.
oSchedule.DayViewHeight = 1024
oSchedule.DayViewWidth = -1
oSchedule.TimeScales.Item(0).MinorTimeRuler = "00:05"
oSchedule.EndUpdate()

147
How can I prevent resizing the schedule view, when a new date is selected
Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.OnSelectDate = 1
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.SingleSel = .t.
oSchedule.DayViewWidth = 48

146
How do I get notified once the user moves an event
' Notifies your application once the event changes the starting or ending margins.
function UpdateEvent as v (Ev  as  OLE::Exontrol.Schedule.1::IEvent)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "UpdateEvent" 
	? Ev 
end function

Dim oSchedule as P
Dim var_Event as P
Dim var_Event1 as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=%5%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
		var_Event.Editable = 1
		var_Event.Caption = "your caption"
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
		var_Event1.Editable = 1
		var_Event1.Caption = "other caption"

145
Can You give me an example for the event handler when a user double clicks an appointment
' Occurs when the user dblclk the left mouse button over an object.
function DblClick as v (Shift  as  N,X  as  OLE::Exontrol.Schedule.1::OLE_XPOS_PIXELS,Y  as  OLE::Exontrol.Schedule.1::OLE_YPOS_PIXELS)
	Dim e as P
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	e = oSchedule.EventFromPoint(-1,-1)
	? "Start:" 
	? e 
	? "End:" 
	? e 
end function

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.AllowEditEvent = 0
oSchedule.AllowToggleSchedule = 0
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#,#6/13/2001#)"
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})

144
Nothing is shown in the schedule view, if I use the Selection property. What am I doing wrong

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#,#6/13/2001#)"

143
Is it possible to lock a date/day, so no events can be created, moved, and so on

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {06/01/2001}
	var_Calendar.Selection = "value in (#6/11/2001#,#6/12/2001#,#6/13/2001#)"
	var_Calendar.DisableZoneFormat = "value = #6/12/2001#"
var_Events = oSchedule.Events
	var_Events.Add({06/11/2001 10:00:00},{06/11/2001 13:00:00})
	var_Events.Add({06/12/2001 10:00:00},{06/12/2001 13:00:00})

142
How can I show the grid lines for minor and major rules in the schedule view

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Background(54) = 0" // oSchedule.Background(54) = 0
oSchedule.Template = "Background(53) = 12632256" // oSchedule.Background(53) = 12632256
oSchedule.Template = "Background(50) = 0" // oSchedule.Background(50) = 0
oSchedule.Template = "Background(49) = 12632256" // oSchedule.Background(49) = 12632256
oSchedule.Template = "Background(56) = 3" // oSchedule.Background(56) = 3
oSchedule.Template = "Background(52) = 3" // oSchedule.Background(52) = 3

141
Is it possible to show the grid lines for minor rulers too in the schedule view

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Background(56) = 3" // oSchedule.Background(56) = 3

140
How can I change the style and colors to show the grid lines

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Background(54) = 48" // oSchedule.Background(54) = 48
oSchedule.Template = "Background(53) = 255" // oSchedule.Background(53) = 255
oSchedule.Template = "Background(50) = 3" // oSchedule.Background(50) = 3
oSchedule.Template = "Background(49) = 255" // oSchedule.Background(49) = 255

139
How can I show a solid line rather than dot lines in the schedule view

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Background(54) = 48" // oSchedule.Background(54) = 48
oSchedule.Template = "Background(53) = 0" // oSchedule.Background(53) = 0

138
Is it possible to hide or change the lines in the schedule view

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Background(54) = -1" // oSchedule.Background(54) = -1

137
Is there a possiblity to lock an event, so it can't be moved or edited

Dim oSchedule as P
Dim var_Event as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/27/2012}
var_Events = oSchedule.Events
	var_Event = var_Events.Add({06/27/2012 10:00:00},{06/27/2012 11:30:00})
		var_Event.BodyPattern.Type = 6
		var_Event.Movable = .f.
		var_Event.Resizable = 0
		var_Event.Selectable = .f.
		var_Event.Editable = 0
		var_Event.ExtraLabel = "locked"
	var_Events.Add({06/27/2012 13:30:00},{06/27/2012 15:30:00})

136
Is it possible to load a PNG file on the control's background ( /com only )

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Template = "Picture = LoadPicture(`c:\exontrol\images\card.png`)"

135
What is the Event.UserData property used for

Dim oSchedule as P
Dim var_Event as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/27/2012}
oSchedule.DefaultEventTooltip = "Start: <%=%1%><br>End: <%=%2%><br>Duration: <%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%><b><%=(len(%6) ? `<br>UserData: `+ %6 : ``)%></b>"
var_Events = oSchedule.Events
	' var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00}).UserData = "Any extra data associated with the event"
	var_Event = var_Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.UserData = `Any extra data associated with the event`"

	var_Events.Add({06/27/2012 11:30:00},{06/27/2012 13:30:00})

134
Is there also an event for when a user selects another month in the date-picker control
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "End exCalendarDateChange(3)" 
	? Operation 
	? "Currently browsing date:" 
	? oSchedule.Calendar.Date 
end function

' Occurs when the control's layout is about to be changed.
function LayoutStartChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Start exCalendarDateChange(3)" 
	? Operation 
	? "Previously browsing date:" 
	? oSchedule.Calendar.Date 
end function

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex

133
How can I display the time-zone behind or back (method 2)

Dim oSchedule as P
Dim var_MarkZone as P
Dim var_Pattern as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/27/2012}
var_MarkZone = oSchedule.MarkZones.Add("zone",{06/27/2012 10:30:00},{06/27/2012 13:00:00})
	var_MarkZone.LongLabel = "zone"
	var_Pattern = var_MarkZone.Pattern
		var_Pattern.Type = 6
		var_Pattern.Color = 2631720
oSchedule.ShowMarkZone = 3
oSchedule.Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})

132
How can I display the time-zone behind or back (method 1)

Dim oSchedule as P
Dim var_MarkZone as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/27/2012}
' oSchedule.MarkZones.Add("zone",{06/27/2012 10:30:00},{06/27/2012 13:00:00}).LongLabel = "zone"
var_MarkZone = oSchedule.MarkZones.Add("zone",{06/27/2012 10:30:00},{06/27/2012 13:00:00})
oSchedule.TemplateDef = "dim var_MarkZone"
oSchedule.TemplateDef = var_MarkZone
oSchedule.Template = "var_MarkZone.LongLabel = `zone`"

oSchedule.ShowMarkZone = 1
oSchedule.Events.Add({06/27/2012 11:00:00},{06/27/2012 12:30:00})

131
How can I add a time-zone

Dim oSchedule as P
Dim var_MarkZone as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {06/27/2012}
' oSchedule.MarkZones.Add("zone",{06/27/2012 10:30:00},{06/27/2012 13:00:00}).LongLabel = "zone"
var_MarkZone = oSchedule.MarkZones.Add("zone",{06/27/2012 10:30:00},{06/27/2012 13:00:00})
oSchedule.TemplateDef = "dim var_MarkZone"
oSchedule.TemplateDef = var_MarkZone
oSchedule.Template = "var_MarkZone.LongLabel = `zone`"


130
How can I specify a larger height for the timer, or it is possible to make it bigger

Dim oSchedule as P
Dim var_Appearance as P
Dim var_MarkTime as P
Dim var_MarkTime1 as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.Calendar.Selection = {05/24/2012}
var_Appearance = oSchedule.VisualAppearance
	var_Appearance.Add(1,"gBFLBCJwBAEHhEJAEGg4BC0MQAAYAQGKIYBkAKBQAGaAoDDUOQzQwAAxDGKUEwsACEIrjKCYVgOHYYQjGMZwHIUIhkGoSZKlCIRVDCKYJSzLcZAFIMRwSBiEQTmaa4WiKIgIQiUBomGahajkMoYZCYKKSCI2S4aDZCIoTPLMagxC5GJCnSJnITJCpdV7XVgWHYVSzDM6yEScZTkFqubZsW5cNwXHZ9azkQpyFRPe6bbrqfJ/X5gN64HgBfrEUo8cLxHCMKw3DKPYrkOLHS4CQjnSrLcqzDK8ax3GafZwcbqKWbmR5LUjTNR1DS9Hy3Kh8O4sSDbDqeZZpW7bNx2Xa9YQZcS5JBvfA8BwXC6JY7heR4ZIHTT9GbNc7zXQdHxLiuUZrnUEwvFYIoDjeXZuHePA+A8Hx/kuYhQD2WQqg8T4vlWbJ3nuPg+l+H5BFEASAg==")
	var_Appearance.Add(2,"CP:1 0 -3 0 3")
var_MarkTime = oSchedule.MarkTimes.Add("timer1",{05/24/2012 11:15:00})
	var_MarkTime.BackColor = 16777216
	var_MarkTime.Line = -1
	var_MarkTime.Label = "default height"
	var_MarkTime.LabelAlign = 34
var_MarkTime1 = oSchedule.MarkTimes.Add("timer2",{05/24/2012 13:15:00})
	var_MarkTime1.BackColor = 33554432
	var_MarkTime1.Line = -1
	var_MarkTime1.Label = "larger height"
	var_MarkTime1.LabelAlign = 34
oSchedule.EndUpdate()

129
How I know what event was edited when it was edited by a user
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "End Operation exScheduleEditEvent(15)" 
	? Operation 
	? "Use the global member from LayoutStartChanging, and you got the Event being edited" 
end function

' Occurs when the control's layout is about to be changed.
function LayoutStartChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Start Operation exScheduleEditEvent(15)" 
	? Operation 
	? "Holds the EventFromPoint to a global member" 
	? oSchedule.EventFromPoint(-1,-1) 
end function

Dim oSchedule as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.SelectEventStyle = 816 'exLinesThicker + exLinesSolid
oSchedule.Calendar.Selection = {05/24/2012}
var_Events = oSchedule.Events
	var_Events.Add({05/24/2012 09:00:00},{05/24/2012 12:00:00})
	var_Events.Add({05/24/2012 10:45:00},{05/24/2012 12:45:00})
oSchedule.EndUpdate()

128
What are timers in your exSchedule component

Dim oSchedule as P
Dim var_Events as P
Dim var_MarkTime as P
Dim var_MarkTime1 as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.Calendar.Selection = {05/24/2012}
var_MarkTime = oSchedule.MarkTimes.Add("timer1",{05/24/2012 08:35:00})
	var_MarkTime.Label = "<fgcolor=808080>fixed timer"
	var_MarkTime.LabelAlign = 1
	var_MarkTime.Pattern.Type = 6
	var_MarkTime.Pattern.Color = 14737632
var_MarkTime1 = oSchedule.MarkTimes.Add("timer2",{05/24/2012 10:51:00})
	var_MarkTime1.Label = "<fgcolor=00FF00>movable timer"
	var_MarkTime1.Movable = .t.
	var_MarkTime1.BodyEventBackColor = 8454016
	var_MarkTime1.LineColor = 1044480
	var_MarkTime1.TimeScaleLineColor = 65280
	var_MarkTime1.TimeScaleLabel = ""
	var_MarkTime1.Line = 780 'exLinesThicker + exLinesDash
	var_MarkTime1.Label = "<bgcolor=FFFFFF><fgcolor=00FF00><b><%hh%>:<%nn%> <%AM/PM%><br><%loc_sdate%>"
	var_MarkTime1.TimeScaleLine = 259 'exLinesThick + exLinesDot4
var_Events = oSchedule.Events
	var_Events.Add({05/24/2012 09:00:00},{05/24/2012 12:00:00})
	var_Events.Add({05/24/2012 10:45:00},{05/24/2012 12:45:00})
	var_Events.Add({05/24/2012 11:30:00},{05/24/2012 14:30:00})
	var_Events.Add({05/24/2012 12:45:00},{05/24/2012 15:45:00})
oSchedule.EndUpdate()

127
How do I get the selected dates in the calendar panel
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Operation: exScheduleSelectionChange(10)" 
	? Operation 
	? "Selected Event Count:" 
	? oSchedule.SelCount 
	? "First Selected Event:" 
	? oSchedule.SelEvent(0) 
end function

Dim oSchedule as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {01/01/2011}
var_Events = oSchedule.Events
	var_Events.Add({01/01/2011 10:00:00},{01/01/2011 11:30:00})
	var_Events.Add({01/01/2011 11:30:00},{01/01/2011 13:30:00})

126
How do I get the selected dates in the calendar panel
' Notifies your application once the control's layout has been changed.
function LayoutEndChanging as v (Operation  as  OLE::Exontrol.Schedule.1::LayoutChangingEnum)
	Dim var_Calendar as P
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
	? "Operation: exCalendarSelectionChange(1)" 
	? Operation 
	var_Calendar = oSchedule.Calendar
		? "Selected Date Count:" 
		? var_Calendar.SelCount 
		? "First Selected Date:" 
		? var_Calendar.SelDate(0) 
end function

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex

125
What is the easiest way to display a picture on my event

Dim oSchedule as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {05/24/2012}
oSchedule.Pictures.Add("pic1","c:\exontrol\images\zipdisk.gif")
' oSchedule.Events.Add({05/24/2012 09:00:00},{05/24/2012 14:00:00}).Pictures = "pic1"
var_Event = oSchedule.Events.Add({05/24/2012 09:00:00},{05/24/2012 14:00:00})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.Pictures = `pic1`"


124
How can I programmatically move a specified event
Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.BeginUpdate()
oSchedule.Calendar.Selection = {05/24/2012}
oSchedule.Events.Add({05/24/2012 10:00:00},{05/24/2012 12:00:00}).MoveBy("-00:15")
oSchedule.EndUpdate()

123
How can I edit the event but still display its margins
' Notifies your application once the a new event is added.
function AddEvent as v (Ev  as  OLE::Exontrol.Schedule.1::IEvent)
	' Ev.Editable = 1
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
end function

Dim oSchedule as P
Dim var_Event as P
Dim var_Event1 as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=%5%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
		var_Event.Editable = 1
		var_Event.Caption = "your caption"
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
		var_Event1.Editable = 1
		var_Event1.Caption = "other caption"

122
How can I edit the events

' Notifies your application once the a new event is added.
function AddEvent as v (Ev  as  OLE::Exontrol.Schedule.1::IEvent)
	' Ev.Editable = 3
	oSchedule = topparent:CONTROL_ACTIVEX1.activex
end function

Dim oSchedule as P
Dim var_Event as P
Dim var_Event1 as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = ""
oSchedule.DefaultEventShortLabel = ""
oSchedule.CreateEventLabel = ""
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
		var_Event.Editable = 3
		var_Event.LongLabel = "just your label"
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
		var_Event1.Editable = 3
		var_Event1.LongLabel = "just another label"

121
At the moment the scheduler only displays events from 8:00 am to 3:00 pm. How do I extend this time frame

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.DayStartTime = "07:30"
oSchedule.DayEndTime = "14:30"

120
How does localization work

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.FirstWeekDay = var_Calendar.LocFirstWeekDay
	var_Calendar.MonthNames = var_Calendar.LocMonthNames
	var_Calendar.WeekDays = var_Calendar.LocWeekDays
	var_Calendar.AMPM = var_Calendar.LocAMPM

119
Is it possible to limit the calendar to one month only

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.ScrollBars = 0
oSchedule.AllowMoveSchedule = 0
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.MinDate = {01/01/2001}
	var_Calendar.MaxDate = {01/31/2001}

118
How can I display a distingue text for repetitive events

Dim oSchedule as P
Dim var_Event as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=%264? `repetitive event`:``%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00}).Repetitive = "weekday(value) = 3"
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.Repetitive = `weekday(value) = 3`"

	var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})

117
How can I display the event's duration on the body of the event

Dim oSchedule as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=((1:=int(0:= (date(%2)-date(%1)))) != 0 ? (=:1 + ' day(s)') : '') + (=:1 ? ' ' : '' ) + ((1:=int(0:=((=:0 - =:1 + 1/24/60/60/2)*24))) != 0 ? =:1 + ' hour(s)' : '' ) + (=:1 ? ' ' : '' ) + ((1:=round((=:0 - =:1)*60)) != 0 ? =:1 + ' min(s)' : '')%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})

116
The sample shows how the event's body can display automatically the UserData property of the event

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=%6%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00}).UserData = "UserData 1"
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.UserData = `UserData 1`"

	' var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).UserData = "UserData 2"
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.UserData = `UserData 2`"


115
The sample shows how the event's body can display automatically the Caption property of the event

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%><br><%=%5%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00}).Caption = "Event 1"
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.Caption = `Event 1`"

	' var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).Caption = "Event 2"
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.Caption = `Event 2`"


114
The sample shows how the event's body can display automatically the group's ID, Caption and Title

Dim oSchedule as P
Dim var_Event as local
Dim var_Event1 as local
Dim var_Events as P
Dim var_Group as P
Dim var_Group1 as P
Dim var_Groups as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "Group's ID:<%=%4%><br>Group's Caption: <%=%262%><br>Group's Title: <%=%263%><br><%=%256%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.DisplayGroupingButton = .t.
oSchedule.ShowGroupingEvents = .t.
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Groups = oSchedule.Groups
	var_Group = var_Groups.Add(1,"Group 1")
		var_Group.Title = "First"
		var_Group.Visible = .t.
	var_Group1 = var_Groups.Add(2,"Group 2")
		var_Group1.Title = "Second"
		var_Group1.Visible = .t.
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00}).GroupID = 1
	var_Event = var_Events.Add({01/10/2001 09:00:00},{01/10/2001 12:30:00})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.GroupID = 1"

	' var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).GroupID = 2
	var_Event1 = var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
	oSchedule.TemplateDef = "dim var_Event1"
	oSchedule.TemplateDef = var_Event1
	oSchedule.Template = "var_Event1.GroupID = 2"


113
The following sample displays automatically an "All-Day-Event: " prefix for AllDayEvent events

Dim oSchedule as P
Dim var_Event as local
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%3 ? `All-Day-Event: `: ``%><%=%256%>"
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.Calendar.Selection = {01/10/2001}
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
var_Events = oSchedule.Events
	' var_Events.Add({01/10/2001},{01/10/2001}).AllDayEvent = .t.
	var_Event = var_Events.Add({01/10/2001},{01/10/2001})
	oSchedule.TemplateDef = "dim var_Event"
	oSchedule.TemplateDef = var_Event
	oSchedule.Template = "var_Event.AllDayEvent = True"

	var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})

112
How can I use the calendar's LongTimeFormat

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%257%>"
oSchedule.DefaultEventShortLabel = "<%=%257%>"
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.LongTimeFormat = "<%hh%>:<%nn%>:<%ss%>"
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
oSchedule.Events.Add({01/10/2001 10:00:00},{01/11/2001 13:00:00})

111
How can I use the calendar's ShortTimeFormat. The sample displays the times in 24-hours format

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%>"
oSchedule.DefaultEventShortLabel = "<%=%256%>"
oSchedule.TimeScales.Item(0).MajorTimeLabel = "<%hh%>:<%nn%>"
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.ShortTimeFormat = "<%h%>:<%nn%>"
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
oSchedule.Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})

110
How can I use the calendar's ShortDateFormat

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%256%>"
oSchedule.DefaultEventShortLabel = "<%=%256%>"
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.ShortDateFormat = "<%loc_d2%>, <%loc_m2%> <%d%>, <%yy%>"
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
' oSchedule.Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).AllDayEvent = .t.
var_Event = oSchedule.Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.AllDayEvent = True"


109
How can I use the calendar's LongDateFormat

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as local

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.DefaultEventLongLabel = "<%=%257%>"
oSchedule.DefaultEventShortLabel = "<%=%257%>"
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = {01/10/2001}
	var_Calendar.LongDateFormat = "<%loc_dddd%>, <%loc_mmm%> <%d%>, <%yyyy%>"
oSchedule.OnResizeControl = 3073 'exCalendarAutoHide + exCalendarFit + exResizePanelRight
' oSchedule.Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00}).AllDayEvent = .t.
var_Event = oSchedule.Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
oSchedule.TemplateDef = "dim var_Event"
oSchedule.TemplateDef = var_Event
oSchedule.Template = "var_Event.AllDayEvent = True"


108
Is it possible to prevent updating events

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.SelectEventStyle = 48
oSchedule.AllowUpdateDisableZone = .f.
var_Calendar = oSchedule.Calendar
	var_Calendar.ShowNonMonthDays = .f.
	var_Calendar.Selection = {01/09/2001}
	var_Calendar.DisableZoneFormat = "value >= #1/11/2001#"
	var_Calendar.MinDate = {01/01/2001}
var_Events = oSchedule.Events
	var_Events.Add({01/10/2001 10:00:00},{01/10/2001 13:00:00})
	var_Events.Add({01/11/2001 10:00:00},{01/11/2001 13:00:00})

107
How can I specify that after editing the caption should be on top ( method 2 )

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.DefaultEventLongLabel = ""
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.SelectEventStyle = 48
var_Calendar = oSchedule.Calendar
	var_Calendar.ShowNonMonthDays = .f.
	var_Calendar.Selection = {01/01/2001}
var_Events = oSchedule.Events
	var_Event = var_Events.Add({01/01/2001 10:00:00},{01/01/2001 13:00:00})
		var_Event.ExtraLabel = "title"
		var_Event.ExtraLabelAlign = 0

106
How can I specify that after editing the caption should be on top ( method 1 )

Dim oSchedule as P
Dim var_Calendar as P
Dim var_Event as P
Dim var_Events as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.DefaultEventLongLabel = ""
oSchedule.DefaultEventShortLabel = oSchedule.DefaultEventLongLabel
oSchedule.SelectEventStyle = 48
var_Calendar = oSchedule.Calendar
	var_Calendar.ShowNonMonthDays = .f.
	var_Calendar.Selection = {01/01/2001}
var_Events = oSchedule.Events
	var_Event = var_Events.Add({01/01/2001 10:00:00},{01/01/2001 13:00:00})
		var_Event.LongLabel = "title"
		var_Event.Editable = 3

105
How can I get ride or hide the of the calendar's grid lines

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.ShowNonMonthDays = .f.
	var_Calendar.Selection = {01/01/2001}
	var_Calendar.ShowGridLines = -1

104
How can I programmatically select a single date ( method 2 )

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.Calendar.Selection = {01/01/2012}

103
How can I programmatically select a single date ( method 1 )

Dim oSchedule as P
Dim var_Calendar as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
var_Calendar = oSchedule.Calendar
	var_Calendar.Selection = "0"
	' var_Calendar.SelectDate({01/01/2012}) = .t.
	oSchedule.TemplateDef = "dim var_Calendar"
	oSchedule.TemplateDef = var_Calendar
	oSchedule.Template = "var_Calendar.SelectDate(#1/1/2012#) = True"


102
How can I prevent showing the Today button, in the calendar panel

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OnResizeControl = 256
oSchedule.Calendar.ShowTodayButton = .f.

101
How can I display just the calendar panel, not including the schedule panel

Dim oSchedule as P

oSchedule = topparent:CONTROL_ACTIVEX1.activex
oSchedule.OnResizeControl = 256